package org.study.influxdb.boot.model;

import com.influxdb.annotations.Column;
import com.influxdb.annotations.Measurement;
import lombok.Builder;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * @author LENOVO
 */
@Data
@Builder
@Measurement(name = "all_data_type")
public class AllDataType implements Serializable {
    private static final long serialVersionUID = 5332878715671429377L;

    @Column(name = "str_type", tag = true)
    private String strType;

    @Column(name = "decimal_type", tag = true)
    private BigDecimal decimalType;

    @Column(name = "long_type", tag = true)
    private Long longType;

    @Column(name = "int_type", tag = true)
    private Integer intType;

    @Column(name = "float_type", tag = true)
    private Float floatType;

    @Column(name = "double_type", tag = true)
    private Double doubleType;

    @Column(name = "local_date", tag = true)
    private LocalDate localDate;

    @Column(name = "create_time", tag = true)
    private LocalDateTime createTime;

    @Column(name = "update_time", tag = true)
    private LocalDateTime updateTime;

    @Column(name = "field1")
    private String field1;
    @Column(name = "field2")
    private LocalDate field2;
    @Column(name = "field3")
    private LocalDateTime field3;
}
